#pragma once
#include <string>
#include <iostream>
class SpaceAsset {
public:
    virtual ~SpaceAsset() = default;
    virtual std::string type()  const = 0;
    virtual std::string id()    const { return m_id; }
    virtual void report()       const = 0;
    virtual void save(std::ostream& os) const = 0;
protected:
    std::string m_id;
};